
var prefix = ctx + "order/refDetail"
$(function() {
	load();
});

function load() {
	$('#exampleTable')
			.bootstrapTable(
					{
						method : 'get', // 服务器数据的请求方式 get or post
						url : prefix + "/list", // 服务器数据的加载地址
						iconSize : 'outline',
						toolbar : '#exampleToolbar',
						striped : true, // 设置为true会有隔行变色效果
						dataType : "json", // 服务器返回的数据类型
						pagination : true, // 设置为true会在底部显示分页条
						singleSelect : false, // 设置为true将禁止多选
						pageSize : 10, // 如果设置了分页，每页数据条数
						pageNumber : 1, // 如果设置了分布，首页页码
						showColumns : false, // 是否显示内容下拉框（选择显示的列）
						sidePagination : "server", // 设置在哪里进行分页，可选值为"client" 或者 "server"
						queryParams : function(params) {
							return {
								//说明：传入后台的参数包括offset开始索引，limit步长，sort排序列，order：desc或者,以及所有列的键值对
								refFlag:9,
								limit: params.limit,
								offset:params.offset
							};
						},
						columns : [
								{
									checkbox : true
								},
																{
									field : 'refId', 
									title : '退款流水号',
									visible:false
								},
																{
									field : 'ecpId', 
									title : '电子券编号' 
								},
																{
									field : 'ordId', 
									title : '订单编号' 
								},
																{
									field : 'platName', 
									title : '平台名称' 
								},
																{
									field : 'merchantName', 
									title : '商户名称'
								},
																{
									field : 'provinceNum', 
									title : '省' 
								},
																{
									field : 'cityNum', 
									title : '市' 
								},
																{
									field : 'cpName', 
									title : '优惠券名称' 
								},
																{
									field : 'costFee', 
									title : '单价' 
								},
																{
									field : 'ecpNum', 
									title : '数量' 
								},
																{
									field : 'orderFee', 
									title : '订单金额'
								},
																{
									field : 'chgTime', 
									title : '支付时间' 
								},
								/*								{
									field : 'orderTime', 
									title : '订单生成时间' 
								},*/
																{
									field : 'pubManName', 
									title : '退款申请人' 
								},
																{
									field : 'pubTime', 
									title : '发起退款时间' 
								},
																{
									field : 'refDetail', 
									title : '退款原因' 
								},
																{
									field : 'refFlag', 
									title : '退款状态' ,
									formatter : function(value, row, index) {
										//退款状态 0 取消 1 退款中 2 已退款 3 已拒绝
										var e = value;
										if(value == '0'){
											//已作废
											e = '已取消';
										}else if(value == '1'){
											//1=未使用 2=已核销
											e = '退款中';
										}else if(value == '2'){
											e = '已退款 ';
										}else if(value == '3'){
											e = '已拒绝';
										}else if(value == '4'){
											e = '已审核等待退款';
										}else if(value == '9'){
											e = '待审核';
										}else{
											
										}
									
										return e;
									}
								},
																{
									field : 'ecpFlag', 
									title : '作废状态' ,
									formatter : function(value, row, index) {
										var e = '';
										if(value == '0'){
											//已作废
											e = '已作废';
										}else{
											//1=未使用 2=已核销
											e = '未作废';
										}
									
										return e;
									}
								},
																{
									title : '作废',
									field : 'ecpFlag',
									align : 'center',
									formatter : function(value, row, index) {
										var e = '';
										if(value == '0'){
											//已作废
											e = '<a class="btn btn-primary" href="#" mce_href="#" title="已作废" onclick="">已作废</a> ';
										}else{
											//1=未使用 2=已核销
											e = '<a class="btn btn-primary" href="#" mce_href="#" title="作废" onclick="doObsolete(\''+ row.ecpId+ '\',\''+row.ecpFlag+'\')">作废</a> ';
										}
									
										return e;
									}
								},
																{
									title : '审核',
									field : 'id',
									align : 'center',
									formatter : function(value, row, index) {
										var e = '<a class="btn btn-primary btn-sm " href="#" mce_href="#" title="退款" onclick="doRefund(\''+ row.refId+ '\',\''+row.refFlag+'\')">退款</a> ';
										var d = '<a class="btn btn-warning btn-sm " href="#" title="拒绝"  mce_href="#" onclick="doRefuse(\''+ row.refId+ '\',\''+row.refFlag+'\')">拒绝</a> ';
										return e + d ;
									}
								} ]
					});
}
function reLoad() {
	$('#exampleTable').bootstrapTable('refresh');
}
//电子券作废
function doObsolete(ecpId,ecpFlag){
	//0=已作废,1=未使用 ,2=已核销
	if(ecpFlag == '0'){
		layer.msg("已作废电子券请不要重复执行作废操作!");
		return false;
	}
	if(ecpFlag == '2'){
		layer.msg("已核销电子券不能执行作废操作!");
		return false;
	}
	layer.open({
		type : 2,
		title : '作废',
		maxmin : true,
		shadeClose : false, // 点击遮罩关闭层
		area : [ '600px', '500px' ],
		content : ctx + 'coupon/ecpInfo/obsolete/' + ecpId
	});
	
}
//退款
function doRefund(id,refFlag){
	//退款状态 0 取消 1 退款中 2 已退款 3 已拒绝 9 待审核
	if(refFlag == '3'){
		layer.msg("不能执行退款操作,当前电子券已执行过拒绝退款操作!");
		return false;
	}
	if(refFlag == '0'){
		layer.msg("不能执行退款操作,当前退款申请已取消!");
		return false;
	}
	if(refFlag == '1'){
		layer.msg("不能执行退款操作,当前退款申请已在退款中!");
		return false;
	}
	if(refFlag == '2'){
		layer.msg("不能执行退款操作,当前退款申请已完成退款!");
		return false;
	}
	
	layer.confirm('确定要同意退款吗？', {
		btn : [ '确定', '取消' ]
	}, function() {
		$.ajax({
			url : prefix+"/refund",
			type : "post",
			data : {
				'refId' : id
			},
			success : function(r) {
				if (r.code==0) {
					layer.msg(r.msg);
					reLoad();
				}else{
					layer.msg(r.msg);
				}
			}
		});
	})
	
}
//拒绝退款
function doRefuse(refId,refFlag){
	//退款状态 0 取消 1 退款中 2 已退款 3 已拒绝 9 待审核
	if(refFlag == '3'){
		layer.msg("当前电子券已执行过拒绝退款操作!");
		return false;
	}
	if(refFlag == '0'){
		layer.msg("当前退款申请已取消!");
		return false;
	}
	if(refFlag == '1'){
		layer.msg("当前退款申请已在退款中,不能执行拒绝操作!");
		return false;
	}
	if(refFlag == '2'){
		layer.msg("当前退款申请已完成退款,不能执行拒绝操作!");
		return false;
	}
	layer.open({
		type : 2,
		title : '拒绝退款',
		maxmin : true,
		shadeClose : false, // 点击遮罩关闭层
		area : [ '600px', '500px' ],
		content : prefix + '/refuse/' + refId
	});
}

function add() {
	var width = $(window).width()*0.8 + 'px';
	var height = $(window).height()*0.8 + 'px';
	layer.open({
		type : 2,
		title : '增加',
		maxmin : true,
		shadeClose : false, // 点击遮罩关闭层
		area : [ width, height ],
		content : prefix + '/add' // iframe的url
	});
}
function edit(id) {
	var width = $(window).width()*0.8 + 'px';
	var height = $(window).height()*0.8 + 'px';
	layer.open({
		type : 2,
		title : '编辑',
		maxmin : true,
		shadeClose : false, // 点击遮罩关闭层
		area : [ width, height ],
		content : prefix + '/edit/' + id // iframe的url
	});
}
function remove(id) {
	layer.confirm('确定要删除选中的记录？', {
		btn : [ '确定', '取消' ]
	}, function() {
		$.ajax({
			url : prefix+"/remove",
			type : "post",
			data : {
				'refId' : id
			},
			success : function(r) {
				if (r.code==0) {
					layer.msg(r.msg);
					reLoad();
				}else{
					layer.msg(r.msg);
				}
			}
		});
	})
}

function resetPwd(id) {
}
function batchRemove() {
	var rows = $('#exampleTable').bootstrapTable('getSelections'); // 返回所有选择的行，当没有选择的记录时，返回一个空数组
	if (rows.length == 0) {
		layer.msg("请选择要删除的数据");
		return;
	}
	layer.confirm("确认要删除选中的'" + rows.length + "'条数据吗?", {
		btn : [ '确定', '取消' ]
	// 按钮
	}, function() {
		var ids = new Array();
		// 遍历所有选择的行数据，取每条数据对应的ID
		$.each(rows, function(i, row) {
			ids[i] = row['refId'];
		});
		$.ajax({
			type : 'POST',
			data : {
				"ids" : ids
			},
			url : prefix + '/batchRemove',
			success : function(r) {
				if (r.code == 0) {
					layer.msg(r.msg);
					reLoad();
				} else {
					layer.msg(r.msg);
				}
			}
		});
	}, function() {

	});
}